home *** CD-ROM | disk | FTP | other *** search
/ Programmer Power Tools / Programmer Power Tools.iso / asmutl / asmhelp.arc / BIOS_DOS.INC < prev    next >
Text File  |  1987-10-31  |  9KB  |  247 lines

  1. ; ************************************************************************
  2. ; **                                    **
  3. ; **    bios_dos.inc                            **
  4. ; **                                    **
  5. ; **    This file defines the services provided by the ROM BIOS and    **
  6. ; **        DOS of the IBM-PC family of computers.            **
  7. ; **                                    **
  8. ; ************************************************************************
  9.  
  10. ; ROM BIOS
  11. ; --------
  12.  
  13. rom_prt_sc    equ    05H    ; ROM PRINT SCREEN INTERRUPT
  14.  
  15.  
  16. rom_vid        equ    10H    ; ROM VIDEO INTERRUPT
  17.  
  18. ; VIDEO INTERRUPT SERVICES
  19.  
  20. wr_vid_mode    equ    00H    ; WRITE VIDEO MODE
  21. wr_cur_size    equ    01H    ; WRITE CURSOR SIZE
  22. wr_cur_pos    equ    02H    ; WRITE CURSOR POSITION
  23. rd_cur_pos    equ    03H    ; READ CURSOR POSITION
  24. rd_pen_pos    equ    04H    ; READ LIGHT PEN POSITION
  25. wr_act_page    equ    05H    ; WRITE ACTIVE PAGE
  26. scroll_up    equ    06H    ; SCROLL WINDOW UP
  27. scroll_down    equ    07H    ; SCROLL WINDOW DOWN
  28. rd_char_attr    equ    08H    ; READ CHARACTER AND ATTRIBUTE
  29. wr_char_attr    equ    09H    ; WRITE CHARACTER AND ATTRIBUTE
  30. wr_char        equ    0AH    ; WRITE CHARACTER
  31. wr_col_pal    equ    0BH    ; WRITE COLOR PALETTE
  32. wr_pixel    equ    0CH    ; WRITE PIXEL
  33. rd_pixel    equ    0DH    ; READ PIXEL
  34. wr_tty        equ    0EH    ; WRITE TTY CHARACTER
  35. rd_vid_mode    equ    0FH    ; READ VIDEO MODE
  36. wr_pal_reg    equ    10H    ; PC-JR WRITE COLOR PALETTE REGISTER
  37. wr_string    equ    13H    ; PC-AT WRITE STRING
  38.  
  39.  
  40. rom_equ        equ    11H    ; ROM EQUIPMENT INTERRUPT
  41.  
  42.  
  43. rom_mem        equ    12H    ; ROM MEMORY SIZE INTERRUPT
  44.  
  45.  
  46. rom_disk    equ    13H    ; ROM DISKETTE INTERRUPT
  47.  
  48. ; DISKETTE INTERRUPT SERVICES
  49.  
  50. rst_disk    equ    00H    ; RESET DISKETTE SYSTEM
  51. rd_disk_stat    equ    01H    ; READ DISKETTE STATUS
  52. rd_disk_sect    equ    02H    ; READ DISKETTE SECTOR
  53. wr_disk_sect    equ    03H    ; WRITE DISKETTE SECTOR
  54. ver_disk_sect    equ    04H    ; VERIFY DISKETTE SECTOR
  55. fmt_disk_trk    equ    05H    ; FORMAT DISKETTE TRACK
  56. rd_disk_parm    equ    08H    ; PC-AT READ DISKETTE PARAMETERS
  57. init_disk_parm    equ    09H    ; PC-AT INITIALIZE DISKETTE PARAMETERS
  58. rd_disk_long    equ    0AH    ; PC-AT READ DISKETTE LONG
  59. wr_disk_long    equ    0BH    ; PC-AT WRITE DISKETTE LONG
  60. disk_seek    equ    0CH    ; PC-AT SEEK DISKETTE TRACK
  61. alt_reset_disk    equ    0DH    ; PC-AT ALTERNATE DISKETTE RESET
  62. test_disk_rdy    equ    10H    ; PC-AT TEST FOR DISKETTE READY 
  63. recal_disk    equ    11H    ; PC-AT RECALIBRATE DISKETTE
  64. disk_diag    equ    14H    ; PC-AT DISKETTE DIAGNOSTICS
  65. rd_disk_type    equ    15H    ; PC-AT READ DISKETTE TYPE
  66. chg_disk_stat    equ    16H    ; PC-AT CHANGE DISKETTE STATUS
  67. wr_disk_type    equ    17H    ; PC-AT WRITE DISKETTE TYPE
  68.  
  69.  
  70. rom_serial    equ    14H    ; ROM SERIAL PORT INTERRUPT
  71.  
  72. ; SERIAL PORT INTERRUPT SERVICES
  73.  
  74. init_port    equ    00H    ; INITIALIZE SERIAL PORT
  75. tx_char        equ    01H    ; TRANSMIT CHARACTER
  76. rx_char        equ    02H    ; RECEIVE CHARACTER
  77. rd_port_stat    equ    03H    ; READ SERIAL PORT STATUS
  78.  
  79.  
  80. rom_dev        equ    15H    ; ROM DEVICE INTERRUPT
  81.  
  82. ; DEVICE INTERRUPT SERVICES
  83.  
  84. cass_on        equ    00H    ; TURN CASSETTE MOTOR ON
  85. cass_off    equ    01H    ; TURN CASSETTE MOTOR OFF
  86. cass_rd        equ    02H    ; READ CASSETTE DATA BLOCK
  87. cass_wr        equ    03H    ; WRITE CASSETTE DATA BLOCK
  88. open_dev    equ    80H    ; PC-AT OPEN DEVICE
  89. close_dev    equ    81H    ; PC-AT CLOSE DEVICE
  90. term_dev    equ    82H    ; PC-AT TERMINATE DEVICE
  91. event_wait    equ    83H    ; PC-AT EVENT WAIT
  92. joystick    equ    84H    ; PC-AT JOYSTICK
  93. sys_req        equ    85H    ; PC-AT Sys Req KEY
  94. wait        equ    86H    ; PC-AT WAIT
  95. move_block    equ    87H    ; PC-AT MOVE BLOCK
  96. rd_ext_mem    equ    88H    ; PC-AT READ EXTENDED MEMORY SIZE
  97. virtual_mem    equ    89H    ; PC-AT SWITCH TO VIRTUAL MEMORY
  98. dev_busy    equ    90H    ; PC-AT DEVICE BUSY LOOP
  99. complete_int    equ    91H    ; PC-AT SET FLAG AND COMPLETE INTERRUPT
  100.  
  101.  
  102. rom_key        equ    16H    ; ROM KEYBOARD INTERRUPT
  103.  
  104. ; KEYBOARD INTERRUPT SERVICES
  105.  
  106. rd_key        equ    00H    ; READ KEYBOARD
  107. test_key    equ    01H    ; TEST KEYBOARD
  108. rd_shift    equ    02H    ; READ SHIFT STATUS
  109. key_delay    equ    03H    ; PC-JR TYPEMATIC DELAY
  110. key_click    equ    04H    ; PC-JR KEYBOARD CLICK
  111.  
  112.  
  113. rom_print    equ    17H    ; ROM PRINTER INTERRUPT
  114.  
  115. ; PRINTER INTERRUPT SERVICES
  116.  
  117. print_char    equ    00H    ; PRINT CHARACTER
  118. init_print    equ    01H    ; INITIALIZE PRINTER
  119. rd_print_stat    equ    02H    ; READ PRINTER STATUS
  120.  
  121.  
  122. rom_basic    equ    18H    ; ROM START BASIC INTERRUPT
  123.  
  124.  
  125. rom_reboot    equ    19H    ; ROM REBOOT INTERRUPT
  126.  
  127.  
  128. rom_time    equ    1AH    ; ROM REAL TIME CLOCK INTERRUPT
  129.  
  130. ; REAL TIME CLOCK INTERRUPT SERVICES
  131.  
  132. rd_count    equ    00H    ; READ CLOCK COUNT
  133. wr_count    equ    01H    ; WRITE CLOCK COUNT
  134. rd_time        equ    02H    ; PC-AT READ TIME
  135. wr_time        equ    03H    ; PC-AT WRITE TIME
  136. rd_date        equ    04H    ; PC-AT READ DATE
  137. wr_date        equ    05H    ; PC-AT WRITE DATE
  138. set_alarm    equ    06H    ; PC-AT SET ALARM
  139. reset_alarm    equ    07H    ; PC-AT RESET ALARM
  140.  
  141.  
  142. ; DOS
  143. ; ---
  144.  
  145. dos_term    equ    20H    ; DOS PROGRAM TERMINATION INTERRUPT
  146.  
  147.  
  148. dos_func    equ    21H    ; DOS FUNCTION INTERRUPT
  149.  
  150. ; FUNCTION INTERRUPT FUNCTIONS
  151.  
  152. term        equ    00H    ; DOS1 - TERMINATE PROGRAM
  153. key_in_echo    equ    01H    ; DOS1 - KEYBOARD INPUT WITH ECHO
  154. disp_out    equ    02H    ; DOS1 - DISPLAY OUTPUT
  155. serial_in    equ    03H    ; DOS1 - SERIAL INPUT
  156. serial_out    equ    04H    ; DOS1 - SERIAL OUTPUT
  157. printer_out    equ    05H    ; DOS1 - PRINTER OUTPUT
  158. console_io    equ    06H    ; DOS1 - DIRECT CONSOLE I/O
  159. dir_key_in    equ    07H    ; DOS1 - DIRECT KEYBOARD INPUT
  160. key_in        equ    08H    ; DOS1 - KEYBOARD INPUT WITHOUT ECHO
  161. disp_string    equ    09H    ; DOS1 - DISPLAY STRING
  162. buf_key_in    equ    0AH    ; DOS1 - BUFFERED KEYBOARD INPUT
  163. chk_key_stat    equ    0BH    ; DOS1 - CHECK KEYBOARD STATUS
  164. clr_key_func    equ    0CH    ; DOS1 - CLEAR KEY BUFFER AND PERFORM FUNCTION
  165. reset_disk    equ    0DH    ; DOS1 - RESET DISK
  166. sel_drive    equ    0EH    ; DOS1 - SELECT CURRENT DRIVE
  167. open_file    equ    0FH    ; DOS1 - OPEN FILE
  168. close_file    equ    10H    ; DOS1 - CLOSE FILE
  169. search_first    equ    11H    ; DOS1 - SEARCH FOR FIRST MATCHING FILE
  170. search_next    equ    12H    ; DOS1 - SEARCH FOR NEXT MATCHING FILE
  171. delete_file    equ    13H    ; DOS1 - DELETE FILE
  172. rd_seq_rec    equ    14H    ; DOS1 - READ SEQUENTIAL RECORD
  173. wr_seq_rec    equ    15H    ; DOS1 - WRITE SEQUENTIAL RECORD
  174. create_file    equ    16H    ; DOS1 - CREATE FILE
  175. rename_file    equ    17H    ; DOS1 - RENAME FILE
  176. rd_cur_drive    equ    19H    ; DOS1 - REPORT CURRENT DRIVE
  177. set_dta        equ    1AH    ; DOS1 - SET DISK TRANSFER AREA FUCNTION
  178. rd_fat_1    equ    1BH    ; DOS1 - READ CURRENT DRIVE'S FAT
  179. rd_fat_2    equ    1CH    ; DOS1 - READ ANY DRIVE'S FAT
  180. rd_ran_rec1    equ    21H    ; DOS1 - READ RANDOM FILE RECORD
  181. wr_ran_rec1    equ    22H    ; DOS1 - WRITE RANDOM FILE RECORD
  182. rd_file_size    equ    23H    ; DOS1 - REPORT FILE SIZE
  183. set_ran_rec    equ    24H    ; DOS1 - SET RANDOM RECORD FIELD SIZE
  184. set_int_vec    equ    25H    ; DOS1 - SET INTERRUPT VECTOR
  185. create_seg    equ    26H    ; DOS1 - CREATE PROGRAM SEGMENT FUCNTION
  186. rd_ran_rec2    equ    27H    ; DOS1 - READ RANDOM FILE RECORD
  187. wr_ran_rec2    equ    28H    ; DOS1 - WRITE RANDOM FILE RECORD FUCNTION
  188. parse_name    equ    29H    ; DOS1 - PARSE FILENAME
  189. get_date    equ    2AH    ; DOS1 - GET DATE
  190. set_date    equ    2BH    ; DOS1 - SET DATE
  191. get_time    equ    2CH    ; DOS1 - GET TIME
  192. set_time    equ    2DH    ; DOS1 - SET TIME
  193. set_verify    equ    2EH    ; DOS1 - SET DISK WRITE VERIFICATION MODE
  194. get_dta        equ    2FH    ; DOS2 - GET DISK TRANSFER AREA ADDRESS
  195. get_ver        equ    30H    ; DOS2 - GET DOS VERSION NUMBER
  196. keep        equ    31H    ; DOS2 - ADVANCED TERMINATE BUT STAY RESIDENT
  197. cntrl_brk    equ    33H    ; DOS2 - GET/SET CONTROL BREAK STATUS
  198. get_int_vec    equ    35H    ; DOS2 - GET INTERRUPT VECTOR
  199. get_space    equ    36H    ; DOS2 - GET DISK FREE SPACE
  200. get_country    equ    38H    ; DOS2 - GET COUNTRY INFORMATION
  201. mkdir        equ    39H    ; DOS2 - MAKE DIRECTORY
  202. rmdir        equ    3AH    ; DOS2 - REMOVE DIRECTORY
  203. chdir        equ    3BH    ; DOS2 - CHANGE CURRENT DIRECTORY FUCNTION
  204. create        equ    3CH    ; DOS2 - CREATE FILE
  205. open        equ    3DH    ; DOS2 - OPEN FILE
  206. close        equ    3EH    ; DOS2 - CLOSE FILE
  207. read        equ    3FH    ; DOS2 - READ FILE/DEVICE
  208. write        equ    40H    ; DOS2 - WRITE FILE/DEVICE
  209. delete        equ    41H    ; DOS2 - DELETE FILE
  210. move_pointer    equ    42H    ; DOS2 - MOVE FILE POINTER
  211. chmod        equ    43H    ; DOS2 - CHANGE FILE MODE
  212. ioctl        equ    44H    ; DOS2 - DEVICE I/O CONTROL
  213. dup        equ    45H    ; DOS2 - DUPLICATE FILE HANDLE
  214. cdup        equ    46H    ; DOS2 - FORCE FILE HANDLE DUPLICATION
  215. get_dir        equ    47H    ; DOS2 - GET CURRENT DIRECTORY
  216. allocate    equ    48H    ; DOS2 - ALLOCATE MEMORY
  217. free        equ    49H    ; DOS2 - FREE MEMORY
  218. set_block    equ    4AH    ; DOS2 - MODIFY ALLOCATED MEMORY BLOCK
  219. exec        equ    4BH    ; DOS2 - LOAD/EXECUTE PROGRAM
  220. term_proc    equ    4CH    ; DOS2 - TERMINATE PROCESS
  221. get_code    equ    4DH    ; DOS2 - GET SUBPROGRAM RETURN CODE
  222. find_first    equ    4EH    ; DOS2 - FIND FIRST FILE MATCH
  223. find_next    equ    4FH    ; DOS2 - FIND NEXT FILE MATCH
  224. get_verify    equ    54H    ; DOS2 - GET FILE WRITE VERIFY STATE
  225. rename        equ    56H    ; DOS2 - RENAME FILE
  226. date_time    equ    57H    ; DOS2 - GET/SET FILE DATE/TIME
  227. get_err        equ    59H    ; DOS3 - GET EXTENDED RETURN CODE
  228. create_temp    equ    5AH    ; DOS3 - CREATE TEMPORARY FILE
  229. create_new    equ    5BH    ; DOS3 - CREATE NEW FILE
  230. file_lock    equ    5CH    ; DOS3 - LOCK/UNLOCK FILE ACCESS
  231. get_psp        equ    62H    ; DOS3 - GET PROGRAM SEGMENT PREFIX ADDRESS
  232. dos_rd_abs    equ    25H    ; DOS ABSOLUTE DISK READ INTERRUPT
  233. dos_wr_abs    equ    26H    ; DOS ABSOLUTE DISK WRITE INTERRUPT
  234. dos_term_res    equ    27H    ; DOS TERMINATE/RESIDENT INTERRUPT
  235.  
  236.  
  237. dos_spool    equ    2FH    ; DOS PRINT SPOOLER INTERRUPT
  238.  
  239. ; PRINT SPOOLER INTERRUPT FUNCTIONS
  240.  
  241. spool_query    equ    00H    ; INSTALLED QUERY
  242. spool_submit    equ    01H    ; SUBMIT FILE
  243. spool_cancel    equ    02H    ; CANCEL FILE
  244. spool_canall    equ    03H    ; CANCEL ALL FILES
  245. spool_queue    equ    04H    ; EXAMINE QUEUE
  246. spool_null    equ    05H    ; NULL
  247.